// Package consts
// @Link  https://github.com/bufanyun/hotgo
// @Copyright  Copyright (c) 2023 HotGo CLI
// @Author  Ms <133814250@qq.com>
// @License  https://github.com/bufanyun/hotgo/blob/master/LICENSE
package consts

import "hotgo/internal/model/entity"

// 用户身份
const (
	AdminMemberIdentityUser    = 1 // 普通用户
	AdminMemberIdentityMember  = 2 // 会员
	AdminMemberIdentityXiaoke  = 3 // 销氪
	AdminMemberIdentityService = 4 // 服务商
)

// 获取用户身份
func GetIdentity(mb entity.AdminMember) int {
	switch mb.RoleId {
	case RoleService: // 角色为服务商，返回服务商身份
		return AdminMemberIdentityService
	case RoleXiaoke: // 角色为销客，返回销客身份
		return AdminMemberIdentityXiaoke
	case RoleUser:
		if mb.MemberStatus == AdminMemberMemberStatusMember { // 角色为用户，会员状态为会员，返回会员身份
			return AdminMemberIdentityMember
		} else if mb.MemberStatus == AdminMemberMemberStatusUser { // 角色为用户，会员状态为非会员，返回用户身份
			return AdminMemberIdentityUser
		}
	}
	return 0
}

// 会员状态
const (
	AdminMemberMemberStatusUser   = 1 // 非会员
	AdminMemberMemberStatusMember = 2 // 会员
)

// 会员类型
const (
	AdminMemberMemberTypeNone    = 0 // 无
	AdminMemberMemberTypeMonth   = 1 // 月卡
	AdminMemberMemberTypeQuarter = 2 // 季卡
	AdminMemberMemberTypeYear    = 3 // 年卡
)

// 渠道来源
const (
	AdminMemberSourceNaturalRegister   = 1 // 自然注册
	AdminMemberSourceUserInvite        = 2 // 用户邀请
	AdminMemberSourceProductFission    = 3 // 商品裂变
	AdminMemberSourceOfflineActivation = 4 // 线下激活
	AdminMemberSourceDouYin            = 5 // 抖音
)

// 用户标签
const (
	AdminMemberLabelGuest      = "游客"
	AdminMemberLabelNewbie     = "新人"
	AdminMemberLabelFirstOrder = "首单用户"
)
